package chapter08

object Test05_MatchCaseClass {
  def main(args: Array[String]): Unit = {
    // 因为直接生成了伴生对象，所以使用就行
    val alice = Student1("alice", 19)

    val result =alice match {
      case Student1("alice",19) =>"alice"+alice.name
      case _ => "else"
    }
  }
}
/*
* 类的匹配，我们要实现伴生对象还有使用unapply方法，太麻烦
* scala中存在一个样例类
* 样例类一旦定义出来，无需再实现伴生对象，和unapply方法
* 可以直接使用，
* 被定义成样例类的class，val的声明会变灰，因为
* 会自动变成属性，所以不需要声明
* */
// 定义成样例类
case class Student1(val name:String,val age:Int){

}
// 类似于直接可以接受参数
case class Student2(name:String,age:Int){

}
